package advisor;

import analyzer.*;
import pokemon.Pokemon;

public abstract class Advisor {
	protected OrganAnalyzer analyzer;
	protected Pokemon pokemon;
	private Consultation consultation;
	
	public Advisor(Pokemon pokemon) {
		this.pokemon = pokemon;
	}
		
	public void setAnalyzer(OrganAnalyzer analyzer) {
		this.analyzer = analyzer;
	}

	public Consultation getConsultation() throws CloneNotSupportedException {
		return (Consultation) consultation.clone();
	}
	
	public void setPokemon(Pokemon pokemon) {
		this.pokemon = pokemon;
	}

	public void viewOrgan() {
		consultation = analyzer.work(pokemon);
	}
}